import { RouteRecordRaw } from "vue-router";
import HomeView from "@/views/ExampleView.vue";
import UserLayout from "@/layouts/UserLayout.vue";
import UserLoginView from "@/views/user/UserLoginView.vue";
import UserRegisterView from "@/views/user/UserRegisterView.vue";
import AdminView from "@/views/AdminView.vue";
import PersonHome from "@/PersonHome.vue";
import NoAuthView from "@/views/NoAuthView.vue";
import ACCESS_ENUM from "@/access/accessEnum";
import AddQuestionView from "@/views/question/AddQuestionView.vue";
import ManageQuestionView from "@/views/question/ManageQuestionView.vue";
import QuestionsView from "@/views/question/QuestionsView.vue";
import QuestionSubmitView from "@/views/question/QuestionSubmitView.vue";
import ViewQuestionView from "@/views/question/ViewQuestionView.vue";
import EChartsView from "@/views/EChartsView.vue";
import ChatDrawer from "@/components/ChatDrawer.vue";
import Test from "@/Test.vue";
//RouteRecordRaw[]雷同Array<RouteRecordRaw>
export const routes: Array<RouteRecordRaw> = [
    {
        path: "/user",
        name: "用户",
        component: UserLayout,
        children: [
            {
                path: "/user/login",
                name: "用户登录",
                component: UserLoginView,
            },
            {
                path: "/user/register",
                name: "用户注册",
                component: UserRegisterView,
            },
        ],
        meta: {
            hideInMenu: true,
        },
    },
    {
        path: "/questions",
        name: "浏览题目",
        component: QuestionsView,
    },
    {
        path: "/question_submit",
        name: "浏览题目提交",
        component: QuestionSubmitView,
		meta: {
		    access: ACCESS_ENUM.USER,
		},
    },
    {
        path: "/view/question/:id",
        name: "在线做题",
        component: ViewQuestionView,
        props: true,
        meta: {
            access: ACCESS_ENUM.USER,
            hideInMenu: true,
        },
    },
    {
        path: "/add/question",
        name: "创建题目",
        component: AddQuestionView,
        meta: {
            access: ACCESS_ENUM.USER,
        },
    },
    {
        path: "/update/question",
        name: "更新题目",
        component: AddQuestionView,
        meta: {
            access: ACCESS_ENUM.USER,
            hideInMenu: true,
        },
    },
    {
        path: "/manage/question",
        name: "管理题目",
        component: ManageQuestionView,
        meta: {
            access: ACCESS_ENUM.ADMIN,
        },
    },
    {
        path: "/echarts",
        name: "图表",
        component: EChartsView,
    },
    {
        path: "/",
        name: "主页",
        component: QuestionsView,
    },
    // {
    //   path: "/hide",
    //   name: "隐藏页面",
    //   component: HomeView,
    //   meta: {
    //     hideInMenu: true,
    //   },
    // },
    {
        path: "/noAuth",
        name: "无权限",
        component: NoAuthView,
        meta: {
            hideInMenu: true,
        },
    },
    {
        path: "/test",
        name: "TEST",
        component: Test,
    },
	{
	    path: "/PersonHome",
	    name: "个人主页",
	    component: PersonHome,
	},
    // {
    //   path: "/admin",
    //   name: "管理员可见",
    //   component: AdminView,
    //   meta: {
    //     access: ACCESS_ENUM.ADMIN,
    //   },
    // },
    // {
    //   path: "/about",
    //   name: "关于我的",
    //   // route level code-splitting
    //   // this generates a separate chunk (about.[hash].js) for this route
    //   // which is lazy-loaded when the route is visited.
    //   component: () =>
    //     import(/* webpackChunkName: "about" */ "../views/AboutView.vue"),
    // },
];
